﻿/**
 */
;
(function() {
    var _ModuleName= {
        "Ace.Widget.jAlert": {
            css:'http://static.aceona.com/app_js/plugins_alerts/jquery.alerts.css',
            js:'http://static.aceona.com/app_js/plugins_alerts/jquery.alerts.js'
        },
        "Ace.Widget.Dialog": {
            css:'http://static.aceona.com/app_js/jqueryUI/css/custom-theme/jquery-ui-1.8rc3.custom.css',
            js:'http://static.aceona.com/app_js/jqueryUI/js/jquery-ui-1.8rc3.custom.min.js',
            dependencies:["Ace.Widget.Iframe"]
        },
        "Ace.Widget.Iframe": {
            js:'http://static.aceona.com/app_js/jqueryUI/development-bundle/external/bgiframe/jquery.bgiframe.min.js'
        },
        "Ace.Widget.DataType":{
            js:"http://static.aceona.com/app_js/app_widgets/ace_widgets_jobType.js",
            dependencies:["Ace.Widget.Dialog","Ace.Widget.jAlert"]
        },
        "Ace.Widget.Tips":{
            js:"http://static.aceona.com/app_js/app_widgets/app_widgets_tips.js",
            dependencies:['jquery.tips']
        },
        "jquery.tips":{
            js:"http://static.aceona.com/app_js/plugins_tips/jquery.tips.js"
        }
    };
    var _2= {
        "zh_CN":"easyui-lang-zh_CN.js"
    };
    var _3= {};
    function _4(_5,_6) {
        var _7=false;
        var _8=document.createElement("script");
        _8.type="text/javascript";
        _8.language="javascript";
        _8.src=_5;
        _8.onload=_8.onreadystatechange= function() {
            if(!_7&&(!_8.readyState||_8.readyState=="loaded"||_8.readyState=="complete")) {
                _7=true;
                _8.onload=_8.onreadystatechange=null;
                if(_6) {
                    _6.call(_8);
                }
            }
        };
        document.getElementsByTagName("head")[0].appendChild(_8);
    };

    function _9(_a,_b) {
        _4(_a, function() {
            document.getElementsByTagName("head")[0].removeChild(this);
            if(_b) {
                _b();
            }
        });
    };

    function _c(_d,_e) {
        var _f=document.createElement("link");
        _f.rel="stylesheet";
        _f.type="text/css";
        _f.media="screen";
        _f.href=_d;
        document.getElementsByTagName("head")[0].appendChild(_f);
        if(_e) {
            _e.call(_f);
        }
    };

    function _10(_11,_12) {
        _3[_11]="loading";
        var _13=AceLoader.modules[_11];
        var _14="loading";
        var _15=(AceLoader.css&&_13["css"])?"loading":"loaded";
        if(AceLoader.css&&_13["css"]) {
            if(/^http/i.test(_13["css"])) {
                var url=_13["css"];
            } else {
                var url=AceLoader.base+"themes/"+AceLoader.theme+"/"+_13["css"];
            }
            _c(url, function() {
                _15="loaded";
                if(_14=="loaded"&&_15=="loaded") {
                    _16();
                }
            });
        }
        if(/^http/i.test(_13["js"])) {
            var url=_13["js"];
        } else {
            var url=AceLoader.base+"plugins/"+_13["js"];
        }
        _4(url, function() {
            _14="loaded";
            if(_14=="loaded"&&_15=="loaded") {
                _16();
            }
        });
        function _16() {
            _3[_11]="loaded";
            AceLoader.onProgress(_11);
            if(_12) {
                _12();
            }
        };

    };

    function _17(_18,_19) {
        var mm=[];
        var _1a=false;
        if(typeof _18=="string") {
            add(_18);
        } else {
            for(var i=0;i<_18.length;i++) {
                add(_18[i]);
            }
        }
        function add(_1b) {
            if(!AceLoader.modules[_1b]) {
                return;
            }
            var d=AceLoader.modules[_1b]["dependencies"];
            if(d) {
                for(var i=0;i<d.length;i++) {
                    add(d[i]);
                }
            }
            mm.push(_1b);
        };

        function _1c() {
            if(_19) {
                _19();
            }
            AceLoader.onLoad(_18);
        };

        var _1d=0;
        function _1e() {
            if(mm.length) {
                var m=mm[0];
                if(!_3[m]) {
                    _1a=true;
                    _10(m, function() {
                        mm.shift();
                        _1e();
                    });
                } else {
                    if(_3[m]=="loaded") {
                        mm.shift();
                        _1e();
                    } else {
                        if(_1d<AceLoader.timeout) {
                            _1d+=10;
                            setTimeout(arguments.callee,10);
                        }
                    }
                }
            } else {
                if(AceLoader.locale&&_1a==true&&_2[AceLoader.locale]) {
                    var url=AceLoader.base+"locale/"+_2[AceLoader.locale];
                    _9(url, function() {
                        _1c();
                    });
                } else {
                    _1c();
                }
            }
        };

        _1e();
    };

    AceLoader= {
        //预定义加载的模块
        modules:_ModuleName,
        //预定义语言环境
        locales:_2,
        //组件的根目录
        base:".",
        //主题目录文件夹名
        theme:"default",
        //加载模块时是否加载css
        css:true,
        //语言环境的名称
        locale:null,
        //超时时间
        timeout:2000,
        load: function(_1f,_20) {
            if(/\.css$/i.test(_1f)) {
                if(/^http/i.test(_1f)) {
                    _c(_1f,_20);
                } else {
                    _c(AceLoader.base+_1f,_20);
                }
            } else {
                if(/\.js$/i.test(_1f)) {
                    if(/^http/i.test(_1f)) {
                        _4(_1f,_20);
                    } else {
                        _4(AceLoader.base+_1f,_20);
                    }
                } else {
                    _17(_1f,_20);
                }
            }
        },
        onProgress: function(_21) {
        },
        onLoad: function(_22) {
        }
    };
    var _23=document.getElementsByTagName("script");
    for(var i=0;i<_23.length;i++) {
        var src=_23[i].src;
        if(!src) {
            continue;
        }
        var m=src.match(/AceLoader\.js(\W|$)/i);
        if(m) {
            AceLoader.base=src.substring(0,m.index);
        }
    }
    window.using=AceLoader.load;
    $.use=AceLoader.load;
    //loading parser Plugins
    $.parser= {
        auto:true,
        onComplete: function(_1) {
        },
        plugins:["Ace.Widget.jAlert","Ace.Widget.Dialog","Ace.Widget.Iframe","Ace.Widget.DataType","Ace.Widget.Tips"],
        parse: function(_2) {
            var aa=[];
            for(var i=0;i<$.parser.plugins.length;i++) {
                var _3=$.parser.plugins[i];
                var r=$(".J_ui_"+_3,_2);
                if(r.length) {
                    if(r[_3]) {
                        r[_3]();
                    } else {
                        aa.push({
                            name:_3,
                            jq:r
                        });
                    }
                }
            }
            if(aa.length&&window.AceLoader) {
                var _4=[];
                for(var i=0;i<aa.length;i++) {
                    _4.push(aa[i].name);
                }
                AceLoader.load(_4, function() {
                    for(var i=0;i<aa.length;i++) {
                        var _5=aa[i].name;
                        var jq=aa[i].jq;
                        jq[_5]();
                    }
                    $.parser.onComplete.call($.parser,_2);
                });
            } else {
                $.parser.onComplete.call($.parser,_2);
            }
        }
    };
    $( function() {
        if(!window.AceLoader&&$.parser.auto) {
            $.parser.parse();
        }
    });
    //一加载自动解析进来
    if(window.jQuery) {
        jQuery( function() {
            jQuery.parser.parse();
        });
    }
})();